const mysql = require("mysql");
const config = require("../config/index");

// 创建 MySQL 连接池
const pool = mysql.createPool(config.dbPool);

// 封装查询方法
function query(sql, values, callback) {
  // 如果只传递两个参数，第二个参数为回调函数，第一个参数为 SQL 语句
  if (typeof values === "function") {
    callback = values;
    values = [];
  }

  pool.getConnection((err, connection) => {
    if (err) {
      return callback(err, null);
    }
    connection.query(sql, values, (error, results) => {
      connection.release();
      if (error) {
        return callback(error, null);
      }
      callback(null, results);
    });
  });
}

module.exports = query;
